Physical exercise video system

ABSTRACT

A physical exercise video system includes a physical exercise machine (22), a video system (24) and an interface module (26). The video system (24) has a computer (28) and a removable cartridge (34). The interface module (26) is interposed between the computer (28) and cartridge (34), and provides interactive communication between the computer (28) and exercise machine (22). A communication protocol governs this communication, and includes specifications for status and command data packets. The video system (24) and exercise machine (22) can be selectively operated as either stand-alone units, or in an interactive exercise mode, wherein the exercise data generated by the exercise machine (22) affects the output of the video system (24), and may also be stored in memory within the interface module (26). The video system (24) controls the operation of the exercise machine (22) generally, and specifically, controls the load resistance imposed in opposition to the movement of pedals (66). The control of load resistance by video system (24) is a function of the operating characteristics of the exercise machine (22).

TECHNICAL FIELD

This invention relates to physical exercise video systems, and inparticular to interactive video systems which are adapted for use withphysical exercise machines.

BACKGROUND ART

For years, people have recognized the health benefits of aerobicexercise. As a result, many stationary exercise devices have beenintroduced including bicycles, treadmills, rowing machines and stairclimbers, to name but a few. These devices typically engage users inrepetitive exercise motions, such as pedaling, stepping, pulling orrunning. This exercise movement is resisted (often variably) to inducephysical exertion, leading to aerobic exercise.

Despite the many benefits of exercise, some users find it tedious orboring, and this has discouraged many from regular exercise.Coincidentally, while some people shunned exercise, a large number(particularly teenagers) became television and video game enthusiasts.This development did not go unnoticed by the exercise equipmentindustry, which over the years has attempted to make exercise moreinteresting by associating it with some form of visual entertainment,particularly television or video games. And although there have beenmany attempts to meld exercise and video, none of these efforts haveyielded completely satisfactory results.

By way of background, many commercially available video systems, such asthose sold under the trademarks Nintendo, Sega and Atari, arecomputer-based interactive video game systems which display game outputon a conventional television. Game control peripherals (often referredto as "joysticks") are interfaced to the game system through plug-inports or jacks to provide user interaction with the action depicted onthe screen. Typically, removable memory cartridges containing variousprograms allow the game system to execute different games or otherinteractive programs. While these cartridge-type game systems are ofgreat interest, interactive video programs, including games, can beplayed on other types of video systems, such as, for example, personalcomputers. Moreover, video systems encompass an array of technologiesincluding interactive video games, educational programs, broadcast andcable television and prerecorded video systems such as VCRs.

There have been attempts to interface exercise machines with interactivevideo systems by treating the exercise machine as simply another type ofgame control peripheral or joystick. Some examples of these effortsinclude U.S. Pat. No. 4,817,950 (player moves figure of surfer on videoscreen by moving simulated surfboard with player's feet); U.S. Pat. No.4,711,477 (movement of pedals, handles and swivel seat by player controlaim of video-displayed gun); U.S. Pat. No. 5,054,771 (movement ofswingable member and swivel seat controls position of marker on ascreen); U.S. Pat. No. 4,512,567 (movement of handlebars and pedal rpmenable stationary bicycle to control video game); and U.S. Pat. No.5,139,261 (adjustable pressure sensors placed on floor generate videogame input when pressed by a user).

Other, more sophisticated, efforts have used a video game or likeapparatus to control the load resistance experienced by the user. Someexamples of these efforts include U.S. Pat. No. 5,001,632 (speed orskill level of opponent in video game increases when heart rate fallsoutside of predetermined range); U.S. Pat. No. 4,709,917 (computeradjusts load resistance of bicycle in accordance with type of terraindepicted in video display of road); and U.S. Pat. No. 5,029,846 (loadresistance varied in accordance with simulated hill profile depicted onspinning reel).

None of these attempts have resulted in a practicable and widelyaccepted combination of exercise equipment and video systems. One reasonis that these past efforts tended to focus narrowly on specific gamecontrol hardware (such as swivel seats or simulated surfboards). Inother cases, these approaches address only the specific manner in whicha video game system might respond to exercise conditions (for example,scenery passes by more quickly with increased pedal rpm, or opponentsbecome more powerful when heart rate is too low). These limitations areunacceptable to both users and game developers. On the one hand, usersdemand hardware that will execute a wide variety of games and programs.On the other hand, developers can only afford to invest in programs thatwill execute on a large number of systems.

DISCLOSURE OF INVENTION

In accordance with the invention a flexible and powerful interface isprovided that will result in substantially improved communicationbetween exercise machines and video systems such as video games. Asdiscussed above, other combinations of video games with exerciseequipment tend to be isolated, specific implementations of exerciseequipment adapted for video game interface. In contrast, the presentinvention provides interfaces including hardware configurations,software techniques and communications protocols, which allow a widevariety of exercise equipment to interface with video systems, includingtelevision and interactive video games.

1. Interface Module.

One object of the invention is to provide an exercise video systemhaving an exercise machine, a video system and an interface module forenabling two-way communication therebetween. The video system ispreferably a cartridge-type video game system which uses a conventionaltelevision as a display. However, other video systems can be used.

In one embodiment, the exercise machine includes an exercise structure,which can be a stationary bicycle, treadmill, rowing machine, skier,stair climber or other such device, for example. The exercise structureis characterized by its ability to provide the user with anexercise-movements, such as pedaling, rowing or stepping, for example. Aload device, such as an alternator, applies a load resistance inopposition to the exercise movement to induce aerobic exercise. The loaddevice varies the level of load resistance in accordance with a loadcontrol signal. The exercise machine also includes at least one sensorwhich generates as output an exercise condition signal which can, forexample, represent one or more of the following: heart rate, pedal rpm,calorie consumption, or other exercise-related data.

In accordance with the invention, the interface module is interposedbetween the video system's control unit and memory cartridge to providea parallel bus connection therebetween. Included within the interfacemodule and coupled to the bus connection is a communications port. Thecommunications port is linked to the exercise machine, which is alsoequipped with a suitable communications interface for providing two-waycommunication between the exercise machine and the interface module.

In accordance with the invention, the exercise machine transmits theexercise condition signal to the video system through the interfacemodule, enabling the user to operate an interactive video game or otherprogram in which the user's exercise performance affects game outcome.Moreover, the video system can transmit a load control signal to theexercise machine so as to vary load resistance in accordance with theoutcome of the video game. In this manner, the user receives not onlyvisual feedback via the television or other display, but also receivesfeedback in the form of changing load resistance.

2. Communications Protocol.

Another object of the invention is to provide a protocol forestablishing communication between an exercise machine and a videosystem. The protocol can be practiced with the hardware configurationdescribed above, or other suitable variations.

Under the protocol, the exercise machine and video system are connectedfor two-way communication by, for example, the above-described interfacemodule. The exercise machine periodically sends out a status datapacket. When the video system receives this status data packet, itresponds with a command data packet.

The status data packet includes data bytes indicating the status of theexercise machine, certain predetermined exercise conditions such as, forexample, heart rate, pedal rpm, calorie consumption and the type of theexercise machine. The command data packet includes a command data bytewhich includes initialize and update commands, for example. The commanddata packet also contains data bytes, which, in the case of the updatecommand, are used to update or adjust operation of the exercise machine.Typically, these adjustments involve varying the load resistance andupdating the control panel display.

In accordance with the invention, the exercise machine can also send aspecial status data packet which includes a specification describing theoperating characteristics of the exercise machine. Alternatively, thespecial status data packet can include a code associated with theparticular exercise device. In this case, a table is maintained inmemory of the video system for storing the operating characteristics ofthe exercise machine associated with each code.

3. Multi-Modal Operation.

It is yet another object of the invention to provide a combinationexercise machine and video system which operates in several differentmodes, including interactive exercise mode, graphic overlay mode andstandalone (or "game") mode. In the interactive exercise and graphicoverlay modes, the exercise machine and video system are in two-waycommunication. In the case of the interactive exercise mode, the videosystem generates a video output (such as a game display), while the userinteracts with the video system via the exercise machine and/orconventional game control peripherals. In the case of the graphicoverlay mode, the video system overlays exercise data onto an externalCATV or other video signal. Contrastingly, in stand-alone mode, thevideo system and exercise machine operate independently.

In accordance with the invention, the user can select the desired modeof operation. Additional modes are possible. In multi-player videogames, it is also possible for the first player to operate the gameusing an exercise machine in interactive exercise mode, while a secondplayer also operates the game using conventional game controls in astand-alone mode. In this mode two players, only one of whom is usingthe exercise machine, can compete with each other in the same videogame. Similarly, it is possible to have two exercise machines connectedto the video system so that the players can compete in a video gameusing the exercise machine.

4. Dynamic Control of Exercise Machine.

Still another object of the invention is to provide a video system whichcontrols the load resistance or other operating characteristic of anexercise machine lo in a manner which is well-coordinated with the videosystem's visual display or other program result.

In accordance with the invention, the video system and exercise machineare adapted for two-way communication. The exercise machine includes aload device for applying a variable level of load resistance in responseto a load control signal. The video system generates a program result(such as an animated display), and controls the exercise machine's loadresistance as a function of both the program result and the operatingcharacteristics of the exercise machine, including load response. Inthis manner, changes in actual imposed load occur concurrently withchanges in video display or other program results.

In one embodiment, the video system is a cartridge-type video gamesystem. The game system is interfaced with an exercise machine so thatthe user's exercise performance affects game play, and the game playaffects the load resistance imposed on the user by the exercise machine.The game includes an animated display of a race over terrain of varyinggrade and quality. The video system's computer adjusts the loadresistance of the exercise machine in accordance with both thevariations in the depicted terrain and the exercise machine's loadresponse. By taking load response into account, the changes in loadresistance more realistically correspond to the program results.

For example, if the exercise machine uses an alternator having a nearlyinstantaneous response to changes in the load control signal, the videosystem will vary the load control signal simultaneously with variationsin the depicted terrain. However, if the exercise machine uses a band oreddy current brake having a delayed response to changes in the loadcontrol signal, then the video system will change the load controlsignal prior to the displayed variations in the terrain. In this manner,the user does not experience discontinuity between the depiction ofterrain variations and the imposition of load resistance.

In one embodiment, the exercise machine communicates its operatingcharacteristics to the video system. This-can be accomplished inaccordance with the above-described or other communications protocols.Alternatively, the video system can transmit desired current and futureload values to the exercise machine. The exercise machine can thenadjust the load control signal to achieve the desired future loadresistances in accordance with its particular operating characteristics.

5. Graphic Overlay Mode.

An additional object of the invention is to provide an exercise machineadapted for interface with a video system, and having the capability ofdisplaying exercise data on a video monitor, such as a television, thatis adapted for receiving and displaying an external video signal such asa CATV or television broadcast. In accordance with the invention,exercise data is superimposed over the external signal. It is alsopossible for the user to switch back and forth between watchingtelevision and playing an interactive video game or other program.

One embodiment of the invention includes an exercise machine, acartridge-type video game system, a communications interface, a videointerface and a television. The video interface is interposed betweenthe external video signal and the television, and includes an overlaycircuit that superimposes data onto the external video signal. The videointerface is linked via wire or radio frequency signal to a video portlocated within the communication interface. The video port is coupled tothe video system so that the video system can write exercise data to thevideo port for superimposition on the external video signal by the videooverlay circuit. Alternatively, the video port may be coupled directlyto the exercise machine.

In one embodiment, the video interface includes a switch. The switch hasa first input connected to the video signal output of the video system,and a second input adapted for receiving an external video signal from aCATV tuner or VCR, for example. The switch includes an output that iscoupled to the video overlay circuit, and is adapted for selectivelycoupling the external video signal and video system output to theoverlay circuit. By operating the switch, the user can display eitherthe external video signal or the video system output on the television.

In accordance with one aspect of the invention, the switch is responsiveto a control signal which is generated by the video system. In caseswhere the video system can operate in both the interactive exercise modeand the graphic overlay mode, the switch allows the video system totoggle between the two modes in response to a user's command. Forexample, a user playing a video game in the interactive exercise modecan switch to the graphic overlay mode. Here the video system willsuspend execution of the game program, operate the switch to display aCATV or other external video signal on the television, and then commenceoperation in the graphic overlay mode, described above.

6. Storage of Exercise Data.

Yet another object of the invention is to provide a method for storingexercise information in a combination exercise machine and video system.In accordance with the invention, the combination includes an interfacemodule for enabling communication between the exercise machine and acartridge-type video system. The interface module includes a nonvolatilerandom access memory which is addressable by the video system forstoring exercise data.

In one embodiment, the interface module is interposed between thecartridge and the video system's control unit. The interface moduleincludes a communications port which enables two-way communicationbetween the video system and the exercise machine. The interface modulealso includes memory which is addressable by the video system.

During exercise, the exercise machine transmits exercise data to thevideo system via the interface module. The video system periodicallywrites this information to the memory. In this manner, the user canmaintain a record of exercise data, even if the cartridge or, for thatmatter, the video system is replaced. This is particularly useful wherethe user from time to time exercises with a cartridge-resident exercisetraining program. The exercise training program can access the exercisedata stored in the interface module, even though that data may have beengenerated while the user was exercising with a different trainingprogram or even a video game.

In some cases, game cartridges include a standard routine for recordingin memory exercise data in accordance with a predetermined format. Inthis manner, exercise training programs can include routines whichrecognize and use data stored in the predetermined format by the videogames and other programs.

7. Remote Control of Exercise Machine.

A further object of the invention is to provide a combinationcomputer-controlled exercise machine and computerized video system,wherein the computer processing and display power of the video systemare used to remotely handle the computer-controlled operational anddisplay features of the exercise machine.

In accordance with the invention, the apparatus includes an exercisemachine, a video system that is remote from the exercise machine, and aninterface for enabling data communications between the exercise machineand the video system. Preferably, the video system is a cartridge-typevideo game system. The exercise machine includes a number of elementsfor measurement and control of the exercise activity. These elementscommunicate with the video system via the interface. Thus, the videosystem can collect, process and display exercise data, and can controlthe operation of the exercise machine such as, for example, by adjustingload resistance. In this manner, the exercise device capitalizes on theprocessing power of the video game system, and can be produced without acontrol computer or display, as has heretofore been required.

8. Video Game Exercise protocols.

An additional object of the invention is to provide an exercise videosystem including an exercise machine having a variable resistance whereexercise protocols are embedded in a video game. The protocols areeffective to control the resistance in combination with a game scenarioso as to accomplish a predetermined exercise objective by playing thegame. In one embodiment, the video game display is generated tocorrespond to a predetermined resistance program while compensating forthe rate of exercise of the user. For example, hills can be generated onthe video system display that correspond to the resistance programscontrolling the resistance in the exercise machine. At the same time,the display of the hills is adjusted to take into account the user'srate of exercise.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of a system in accordance with theinvention having an exercise machine, video system and interface module;

FIG. 2 is a block diagram of the system of FIG. 1;

FIG. 3 is an exploded perspective view of the video system and interfacemodule of FIG. 1;

FIG. 4 is a block diagram of the system of FIG. 1, showing in greaterdetail the components of the exercise machine;

FIG. 5 is a plan view of the control panel of the exercise machine ofFIG. 1;

FIG. 6 is a block diagram of the system of FIG. 1, showing the internalcomponents of the interface module;

FIG. 7 is a timing diagram showing the timing relationship between thevideo system computer's clock signal and the internal clock signal usedby the interface module;

FIG. 8 is a block diagram of the system of FIG. 1, showing the internalcomponents of the video interface;

FIG. 9 is block diagram of a system in accordance with an alternativeembodiment of the invention;

FIG. 10 is a diagrammatic illustration of a communications data packet;

FIG. 11 is a diagram showing the contents of a status data packettransmitted from the exercise machine to the video system of FIG. 1;

FIG. 12 is a diagram showing the contents of a command data packettransmitted from the video system to the exercise machine of FIG. 1;

FIG. 13 is a logic flow chart showing the generalized operation ofsoftware executed by the video system of FIG. 1; and

FIG. 14 is a diagram illustrating the output of a video game having anembedded exercise protocol.

MODES FOR CARRYING OUT THE INVENTION

The invention is described with respect to the embodiments of FIGS.1-14. While theses embodiments incorporate the several features of theinvention, it should be noted that in most cases these features can bepracticed independently of one another. The primary features of theinvention are discussed below, and are generally separated into sectionsunder the captions Hardware Configuration, Communications Protocol,Multi-Modal Operation, Dynamic Control of Exercise Machine, GraphicOverlay Mode, Data Storage, Remote Control of Exercise Machine, andVideo Game Exercise Protocols.

While the illustrated embodiment uses a video game system, it isunderstood that the term "video system" is intended to include anyentertainment and educational products that employ graphic displays suchas televisions, video monitors or liquid crystal displays (LCDs).

Hardware Configuration

FIG. 1 is a perspective illustration of an exercise-video system 20 inaccordance with the invention. FIG. 2 is an accompanying block diagram.The system 20 includes an exercise machine 22, a video system 24 and aninterface module 26. Each of these components is discussed below ingreater detail. Generally speaking, however, the video system 24communicates with the exercise machine 22 via the interface module 26,to effectively combine video entertainment with exercise.

Video System.

Referring to FIGS. 1-3, the video system 24 is a cartridge-type videogame system, such as commercially available under the trademarksNintendo, Sega and Atari. The video system 24 includes a video systemcomputer 28 or other control unit. The video system 24 is designed foruse with, and typically sold separately from, a television 30. In somecases, the television 30 could be integral with the video system 24.However, for purposes of this specification, the video system 24 isconsidered separate from the television 30 unless otherwise specified.

The video system 24 also includes two game control peripherals (commonlycalled "joysticks") 32a and 32b, and a removable memory cartridge 34containing a video game program. A third game control peripheral 32c isoptionally coupled directly to the exercise machine 22.

While the illustrated embodiment uses the television 30 for a display,it should be noted that any graphic display device could be used,including video monitors and LCD displays, for example. Moreover, theinvention can also be practiced using virtual reality techniques,including headset-type displays.

The video system computer 28 includes a video signal output 36 which iscoupled to the television 30 via a video interface 38. As best seen inFIG. 1, a conventional wall outlet 40 provides an external cable TV (or"CATV") signal 42 which is routed first through a CATV tuner 44, andthen to the video interface 38. The output of the video interface 38 isfed to the television 30.

The video interface 38 is discussed below in greater detail. Generally,however, it acts as a switch between the video signal output 36 and theoutput of the CATV tuner 44. Moreover, in accordance with the invention,the video interface 38 is coupled directly to the interface module 26 toallow exercise data and graphics to be overlayed onto the CATV signal42.

The video system 24 is characterized in part by its modularity. Forexample, the game control peripherals 32a and 32b are releasablyconnected to video system computer 28 by jacks 36a and 36b,respectively. Likewise, the memory cartridge 34 is removable, to allowconvenient reprogramming of the video system computer 28. While theprimary application of video systems, such as the system 24, is forentertainment and video games, the invention may be practiced with otherapplications, such as educational or fitness training programs.

FIG. 3 is an exploded perspective view of the video system computer 28,the memory cartridge 34, and the interface module 26. It will be notedthat the memory cartridge 34 includes a male connector 46 that conformsto a predefined standard. The video system computer 28 is equipped witha corresponding female connector 48 to allow the memory cartridge 34 tobe conveniently plugged into to the video system computer 28. The maleand female connectors 46, 48 have a number (in this case, sixty-two) ofparallel lines 50 defining a video system bus for data, address, andcontrol signals.

In accordance with the invention, the interface module 26 is interposedbetween the memory cartridge 34 and the video game computer 28. Itincludes a housing 52 having an upwardly opening female connector 54adapted for receiving the male connector 46 of the cartridge 34, and adownwardly extending male connecter 56 adapted for engagement with thefemale connector 48 of the video system computer 28. As best seen inFIG. 6, a bus portion 58 inside the interface module 26 couples thememory cartridge 34 and video system computer 28, and acts as anextension of the video system bus.

The foregoing embodiment is provided for purposes of illustration. Theinvention may be practiced with other types of video systems, includingpersonal computers, as well as systems which have a CD ROM or networkinterface in addition to or in lieu of the memory cartridge 34.Likewise, while the interface module 26 is preferably interposed betweenthe video system computer 28 and memory cartridge 34, otherconfigurations are possible. For example, the interface module 26 couldbe coupled with the video system bus through an expansion slot, jack orother aperture in the housing of video system computer 28.Alternatively, the interface module 26 could be internal to the videosystem computer 28, and could be coupled-electrically or via light,radio or other suitable media.

Exercise Machine.

The exercise machine 22, as illustrated in FIG. 1, is a stationaryexercise bicycle, such as described in U.S. Pat. No. 4,358,105. Theexercise machine 22 has a frame 60, a seat 62 on which a user may sit,handlebars 64 and pedals 66, which the user may engage for repetitiveexercise movement. The invention may also be practiced with other typesof exercise machines, such as rowing machines, skiing machines, stairclimbing simulators, and treadmills, for example.

The components of the exercise machine 22 are illustrated in FIG. 4. Theexercise machine 22 includes an exercise computer 68, which is aMotorola brand 68HC05 microcontroller. Alternatively, any suitablecontrol unit may be used. As best seen in FIG. 4, the exercise computer68 is operatively associated with a number of sensors and devices,namely biosensors 70, a mechanical sensor 72, a control panel 74 and anoptional game control peripheral 32c. The biopotential and mechanicalsensors such as sensors 70, 72 generate data related to the user'sexercise movement. This data could include heart rate, pedal rpm,calorie consumption or other exercise conditions. Generally, mechanicalsensors are coupled directly to the exercise machine 22, whilebiosensors may be coupled to the user or the exercise machine.

The mechanical sensor 72 is a tachometer, and is associated with thepedals 66 for generating a pedal rpm signal. Game control peripheral 32cis optionally mounted to the handlebar 64 for providing user-controlledgame input. The biosensors 70 are mounted to the handlebars 64 fordetecting the user's heart rate. An example of a suitable heart ratedetection system can be found on the Lifecycle®9500 HR brand stationaryexercise bicycle, available from Life Fitness of Franklin Park, Ill.,U.S.A. Alternatively, biosensors 70 can be clipped to the user's ears,mounted to the user's chest or affixed on game control peripherals 32aand 32c. Optionally, the biosensors 70 may communicate with theinterface module 26 via a radio signal and/or an analog signal on one ormore dedicated lines (not illustrated).

The control panel 74 displays exercise data such as elapsed exercisetime, total calorie consumption, heart rate, and pedal rpm. FIG. 5illustrates a plan view of the control panel 74. The control panelinterfaces with the exercise computer 68 in any suitable manner, such asby serial or parallel interface, and includes displays for elapsed time76, heart rate 78, pedal rpm 80 and calorie consumption 82.

The control panel 74 also includes a keypad 84 for accepting user input.User input can include physiological data (such as sex, age and weight)that is useful for managing various types of exercise programs. It canalso include a user-selected effort level, which can be used todetermine or scale the load resistance imposed on the user.

The control panel 74 may include a program profile display 86, whichprovides a scrolling bar graph of current and upcoming load resistancevalues. The program profile display 86 includes columns of LEDs, severalof which are designated in FIG. 5 by reference numerals 86a-86c. Each ofthe columns 86a-86c graphically displays current and upcoming values ofload resistance which will be imposed on the user. These values arestylized as "hill size." The magnitude of each load value is representedby successive illuminating columns of LEDs to define a vertical bargraph. The current value is in the far left-hand column 86a of theprogram profile display 86, and the future values are arranged inchronological order from left to right in the remaining columns 86b-86c.As the program profile display 86 is updated, the represented loadvalues appear to scroll across the display 86 from right to left.

The pedals 66 are drivingly connected (such as by chains or belts, notillustrated) to a load device 88, which in this case is an alternator.Alternator 88 imposes physical drag or load resistance against theuser's exercise movement. While the alternator 88 is the preferred loadresistance mechanism, an eddy-current brake or other suitable device maybe used. The alternator is responsive to a load control signal 90generated by the exercise computer 68 for varying the level ofresistance imposed on the user. In this manner, it is possible toregulate the physiological intensity of the user's exercise movement. Anexample of this technique is disclosed in U.S. Pat. Appl. Ser. No.07/881,918 filed May 12, 1992.

There are a number of techniques for controlling the load resistance ofthe alternator 88. One technique especially suited to computercontrolled exercise machines is pulse width modulation. Accordingly, theexercise computer 68 applies a binary pulse train to the alternator'sfield coil (not illustrated). By varying the duty cycle of the pulsetrain, the exercise computer 68 can control the torque resistanceimposed by the field coil on the alternator's driven coil (not shown).

Interface Module.

As explained below in greater detail, the interface module 26 allows thevideo system computer 28 to communicate with the exercise machine 22.Thus, data generated by the exercise machine 22 (such as heart rate andpedal rpm) is accessible to the video system computer 28. Consequently,the user can play an interactive video game in which the user's exerciseperformance affects game outcome.

Moreover, the video system computer 28 can instruct the exercise machine22 to vary load resistance of the alternator 88 in-accordance with thegame software resident on the memory cartridge 34. For example, in avideo game involving a simulated bicycle race over hilly terrain, thevideo game computer 28 can increase or decrease the exercise machine's22 load resistance in accordance with the grade of the simulated terrainand/or the user's exercise performance.

Referring to FIG. 6, the internal structure of the interface module 26is illustrated in greater detail. The major elements of the interfacemodule are: the internal bus 58, which has data, address, control andpower lines; an addressable asynchronous communications port 94; astatic random access memory ("SRAM") 96; a video port 98 which allows abyte of data to be overlaid on the television 30 via the video interface38; and a network interface 99 which allows the video system computer 28to communicate via modem or the like with remote devices such as network101. Each of these components is coupled to the address and data linesof the bus 58 so that it is accessible by the video system computer 28.

The SRAM 96 is eight kilobytes in size, and preferably includes abattery backup 100. Coupled to the video system computer 28 via theaddress and data lines of the bus 58, the SRAM 96 allows the videosystem computer 28 to store and retrieve data, includingexercise-related data. In this manner, data can be maintained by thesystem 20 even when memory cartridge 34 is changed. This feature isparticularly useful for users who may want to track exercise datarelating to past exercise sessions without having to always use the samememory cartridge (i.e., play the same video game). The communicationsport 94 features an RS-232 connector 102, and conversion circuit 104 andan asynchronous communication interface chip ("ACIA") 106. A cable 108(best seen-in FIG. 1) connects the RS-232 connector 102 to the exercisemachine 22. Alternatively, data could be communicated via light, radioor other suitable media. Data received from the exercise machine 22enters the interface module 26 via the connector 102. The conversioncircuit 104 converts the incoming data signal from RS-232 voltage to TTLvoltage. The converted data is then fed serially from the conversioncircuit 104 to the ACIA 106. The ACIA 106 accumulates the data in aninternal register (not illustrated) so that it is available in parallelformat. Likewise, data stored in the ACIA 106 can be transmitted to theexercise machine 22 via the conversion circuit 104 and RS-232 connector102. The exercise machine 22 includes a remote communications interface111 (best seen in FIG. 4) which is comparable to the communications port94. The remote communications interface 111 enables the exercisecomputer 68 to send and receive data on the RS-232 channel defined bythe cable 108.

The conversion circuit 104 includes a MAX232, available from MaximIntegrated Products of Sunnyvale, Calif., U.S.A. The ACIA 106 is a model6551 available from Rockwell International Corp., U.S.A. While RS-232standard communication is preferred, any suitable standard may be used.

The ACIA 106 is coupled to the address and data lines of the bus 58 sothat the video system computer 28 can read and write data bytes to andfrom the ACIA 106. When the interface module 26 is first activated, thevideo system computer 28 initializes the ACIA 106 to communicate at 9600Baud and to generate a hardware interrupt ("IRQ") signal each time itreceives a byte of data. The communications protocol and software usedin the illustrated embodiment is discussed below in greater detail.

The video port 98 enables the Video system computer 28 to write data tothe video interface 38, which in turn overlays the data on the CATVvideo signal 42. The video port 98 is a data latch coupled to theaddress and data lines of the bus 58, as best seen in FIG. 6. Four bitsof the video port 98 are each coupled to a separate one of four lines114. The four lines 114 are in turn coupled to the video interface 38.Three of the four lines 114 are for timing and control. The fourth isfor serial transmission of data. Because this data is transmittedserially, the video system computer 28 must write eight times to thevideo port 98 in order to transmit one eight-bit byte to the videointerface 38. Alternatively, an additional interface chip, such as ACIA106, could be used which would accept the video data from the videosystem computer 28 as a single byte. The video overlay function isdiscussed below in greater detail.

The interface module 26 includes two additional components which preventpotential hardware conflicts between the interface module 26 and thememory cartridge 34. The first additional component for preventinghardware conflicts is a clock divider 118. The clock divider 118 is a JKflip flop, having as a clock input the system clock signal SYSCLKgenerated by the video system computer 28. The clock divider 118 isarranged to generate an output clock pulse signal 120, which has afrequency that is one-half that of the input signal SYSCLK.

The reduced-frequency clock pulse signal 120 is fed into the clock inputof the ACIA 106, so that each clock cycle of ACIA operation actually hasa duration equal to two clock cycles of the video system computer 28. Insome cases, the clock speed of the video system computer is too fast toenable successful access of the ACIA 106. By dividing the ACIA's 106clock frequency to one-half the frequency of the video system's clocksignal SYSCLK, the ACIA 106-has adequate time to accept or provide databits onto the data lines of bus 58.

FIG. 7 is a diagram illustrating this timing relationship. Referring toFIG. 7, at time to, the video system computer 28 generates a first clockpulse 122, and places data and address information onto the data andaddress lines of the bus 58. At the same time, the interface moduleclock divider 118 generates an ACIA clock pulse 124. This ACIA clockpulse 124 is asserted through time t₂, when the video system computer 28generates a second clock pulse 126. At time t₃, both the single ACIAclock pulse 124 and the second computer clock pulse 126 are terminated.

In practice, the actual data byte to be read or written to the ACIAshould be placed onto the bus between the falling edges at time t₁ andt₃ of the first and second clock pulses 122 and 126. In video systemswith eight-bit buses and sixteen-bit words, this can be accomplished byplacing the subject byte in that half of the word which the video systemcomputer 28 last places onto the bus 58.

The second additional component for preventing hardware conflicts is anaddress decoder 128. The address decoder 128 is coupled to the addresslines of the bus 58 and functions as a chip-select circuit. Each of theabove-mentioned devices (communications port 94, SRAM 96, and video port98) is associated with a predetermined address or range of addresses.When the video system computer 28 places one of these addresses on theaddress lines of the bus 58, the address decoder 128 asserts that one ofthe chip enable outputs (illustrated in FIG. 6 as RAMSEL, ROMSEL,VIDSEL, and COMSEL) which enables the device corresponding to theaddress. For illustration, the RAMSEL signal enables the SRAM 96; theVIDSEL signal enables the video port 98; the COMSEL signal enables thecommunications port 94 and clock divider 118; and ROMSEL signal enablesthe memory cartridge 34. If the optional network interface 99 is used,the address decoder 128 should provide an additional chip enable output.

The address decoder 128 is also coupled to a control line SELECT, whichis shown in FIG. 6 apart from the other control lines of the bus 58. Insome cases, the video system computer 28 may assert the SELECT line whenit is addressing memory locations in the memory cartridge 34. To avoid apossible hardware conflict, the SELECT line does not run directly fromthe connector 56 to the connector 54. Rather, it terminates at theaddress decoder 128. The address decoder 128 circuit asserts the ROMSELsignal (to enable the memory cartridge 34) when the video systemcomputer 28 has asserted the SELECT line and none of its other chipenable lines are asserted. Thus, to the memory cartridge 34, the ROMSELsignal is interpreted as though it were the SELECT signal line.

Communications Protocol

Referring now to FIGS. 10-12, the communications protocol between thevideo system 24 and the exercise machine 22 is now considered in greaterdetail. With both units 22,24 powered on and initialized, the exercisemachine 22 and video system 24 can periodically exchange data, allowingthe video system computer 28 both access to exercise data and theability to control the exercise machine 22. Optionally, the data can beencrypted to prevent use of counterfeit interface modules.

This communication is made possible by the interface module 26,discussed in detail above. The interface module 26 is coupled to the bus58 so that the video system computer 28 can send and receive datapackets such as the generalized communication packet 130 of FIG. 10.Each data packet includes a start byte 132, a predetermined number ofdata bytes 134 follows the start byte 132, and a stop byte 136. Thestart byte 132 has a ninth bit asserted. (The parity bit can be used forthis purpose.) When the communications port 94 in the interface module26 detects that this ninth bit is asserted, it generates an interruptsignal so that the video system computer 28 can process the remainingdata bytes. Likewise, when the remote communications interface 111 inthe exercise machine 22 detects that the ninth bit is asserted, it toogenerates an interrupt signal so that the exercise computer 68 canprocess the incoming data packet.

In the illustrated embodiment, communication is controlled by theexercise machine 22, which every 100 milliseconds transmits acommunication packet 130 having a status data packet 138 as shown inFIG. 11. When the ACIA 106 in the interface module 26 receives a startbyte 132 transmitted by the exercise machine 22, it asserts the IRQsignal, generating a hardware interrupt. The interrupt enables the videosystem computer 28 to process the incoming transmission. Each successivedata byte of the status data packet 138 causes the ACIA 106 to generatean interrupt. The video system computer 28 can then read the byte fromthe ACIA 106 via the address and data lines of the bus 58.

When the stop byte 136 is received, the video system computer 28transmits a communications packet 130 having a command data packet 140as shown in FIG. 12. When the remote communications interface 111 on theexercise machine 22 receives the start byte 132 of the communicationsdata packet 130 transmitted by the video system computer 28, it tooasserts an interrupt signal. The interrupt enables the exercise computer68 to process the incoming command data packet 140.

The status data packet 138 transmitted by the exercise machine 22includes the following bytes: a start byte (including an address andninth staffed bit); data bytes D₁ through D₅ ; and a stop byte(including a checksum and ninth stop bit). The start byte includes anarbitrary address that is preassigned to interface module 26. Startbytes which have a different address are ignored by the ACIA 106. Thedata byte D₀ is a status byte. The data bytes D₁ through D₄ are exercisedata. In this case, the exercise data includes pedal RPM, elapsed timein minutes and seconds, user-selected level and machine type. Otherexercise data may be transmitted depending on the nature andcapabilities of the exercise machine 22. The machine type byte D₅indicates the type of exercise machine, and is discussed below ingreater detail. The stop byte 136 is a checksum, and includes a ninthstop bit.

The status byte 138 has five predefined values each corresponding to adifferent one of the following status conditions: (i) NULL status; (ii)READY status; (iii) RUNNING status; (iv) PAUSING status; and (v) ENDINGstatus. The NULL status means "no status." The READY status means thatthe exercise machine 22 is operating and ready to begin interactivecommunication with the video system computer 28. The RUNNING statusmeans that the exercise machine 22 is engaged in interactivecommunication, and is accepting command data packets 140 from the videosystem computer 28. The PAUSING status means that the exercise machine22 is pausing. The ENDING status means that the exercise program hasterminated, and the exercise computer 68 is displaying exercise data.

In response to receipt of a status data packet 138, the video systemcomputer 28 transmits the command data packet 140 via the interfacemodule 26 including the following bytes: start byte (having an addressand ninth start bit); a command byte D₀ ; a load value byte display databytes D₂ through D₅ ; and a stop byte (having a checksum and a ninthstop bit).

The start byte of the command data packet 140 includes an arbitraryaddress that is preassigned to the exercise machine 22. Start byteswhich have a different address are ignored by the exercise machine 22.The load value D₁ is interpreted as the value of the load resistance tobe imposed on the user by the alternator 88, and is discussed below ingreater detail. The stop byte 136 is a checksum, with an additional stopbit. The command byte D₀ has five predefined values, each correspondingto a different one of the following five commands: (i) NULL command (ii)INITIALIZE command; (iii) UPDATE command; (iv) PAUSE command; (iv)TERMINATE command; and (v) ABORT command.

The NULL command causes no action to be taken by the exercise machine22. The INITIALIZE command instructs the exercise machine 22 toinitialize (i.e., reset) the exercise data (such as total caloriesconsumed) and to begin interactive operation. During interactiveoperation, the exercise computer 68 relinquishes control of the loadresistance and program profile display 86, and abides by the commandsissued by the video system computer 28. The PAUSE command causes theexercise computer 68 to place the exercise machine 22 in a pause mode,such as to allow the user to momentarily dismount. The TERMINATE commandcauses the exercise machine 22 to set load resistance to its lowestlevel, and display exercise data. The ABORT command causes the exercisemachine 22 to immediately terminate interactive operation, and resumestand-alone operation.

The UPDATE command instructs the exercise computer 68 to update the loadcontrol signal 90 and the program profile display 86 with the data bytesD₁ through D₅ contained in the command data packet 140. As discussedearlier, the exercise computer 68 controls the alternator 88 by pulsewidth modulation of the load control signal 90. When the exercisecomputer 68 receives an UPDATE command, it adjusts the duty cycle of theload control signal 90 in accordance with the value of the load byte D₁.

The exercise computer 68 also updates the program profile display 86 inaccordance with the data bytes D₂ through D₅. In practice, each byte D₂through D₅ corresponds to one of the predefined columns of the programprofile display matrix 86, and each bit of each byte corresponds to oneof the LEDs in that column. The state of each particular bit determineswhether or not its corresponding LED is illuminated. Depending on thenumber of columns in the program profile display 86, additional or fewerdata display bytes must be used.

A typical dialogue between the exercise computer 68 and the video systemcomputer 28 begins when the exercise machine 22 is initially powered up.At that time, the exercise computer 68 begins transmitting (every 100milliseconds) a status data packet 138 with the status byte indicating aREADY status. At some point in time, the user activates the video system24, whereupon the video system computer 28 begins receiving the statusdata packet 138 broadcast by the exercise machine 22.

Via the interface module 26, the video system computer 28 responds tothe first received status data packet 138 by transmitting a command datapacket 140 with the command byte indicating an INITIALIZE command. Thiscauses the exercise machine 22 to begin interactive operation. The videogame computer 28 does not necessarily have to issue the INITIALIZEcommand immediately. Rather, initialization can be in response to userinput (such as via the game control peripheral 32a). Alternatively, thevideo system computer 28 can broadcast the INITIALIZE command, but theexercise computer 68 can be programmed to ignore it until instructed bythe user (via the exercise keypad 84) to begin interactive operation.

Once the exercise machine 22 receives and accepts the INITIALIZEcommand, it begins broadcasting a status data packet 138 having a statusbyte D₀ indicating a RUNNING status. When the video system computer 28receives this status, it transmits an UPDATE command, causing theexercise computer 68 to update the load control signal 90 and programprofile display 86 in accordance with the load and display data (D₁through D₅) in the command data packet 140. The exercise machine 22continues to broadcast a RUNNING status every 100 milliseconds, and thevideo system computer 28 continues to respond with successive UPDATEcommands.

At some point, the user may (via the keypad 84) place the exercisemachine 22 into a pause status. In pause status, load resistance is setto its lowest value, giving the user an opportunity to rest or dismount.When the exercise machine 22 is in pause status, the exercise computer68 transmits a status data packet 138 having a status byte Do indicatingthe PAUSE status. When the video system computer 28 receives the PAUSINGstatus byte, it can also enter a pause status, or simply continue thevideo program without further input from the exercise machine 22. Whenthe user (via the keypad 84) brings the exercise machine 22 out of pausestatus, the exercise computer 68 resumes transmission of the RUNNINGstatus byte. In response, the video system computer 28 resumestransmission of the UPDATE command.

The exercise machine 22 can also be made to pause by the video systemcomputer's 28 issuance of the PAUSE command. When placed into pause bythe video system 28, the exercise machine 22 sets load resistance to itslowest value, ignores subsequent load values transmitted by the videosystem computer 28, and begins transmitting a PAUSING status byte. Thevideo system computer 28 terminates pause status by sending the UPDATEcommand. Upon termination of the pause status, the exercise machine 22resumes broadcast of-the-RUNNING status.

After the game or exercise program is over, the video system computer 28transmits a TERMINATE command. The exercise machine 22, upon receivingthe TERMINATE command, begins displaying exercise data (such as, forexample, total calories and kilometers), and begins transmission of theENDING status byte. The exercise machine 22 will continue transmittingthe ENDING status byte (and displaying exercise data) until the userpresses a reset button or the like on the keypad 84. At that time, theexercise machine 22 begins transmission of the READY status byte, andwaits for another dialogue to begin with the video system computer 28.

Multi-Modal Operation

Referring to the flow chart of FIG. 13, the video system 24 can operatein an Exercise Mode, Graphic Overlay Mode or Game Mode. These modesshould not be confused with the concept of interactive and pause statusconditions discussed above in connection with communications protocol.The modes described in this section relate to high-level systemoperation, whereas the status conditions described in connection withthe communications protocols relate to the details of data communicationbetween the exercise machine 22 and the video system 24.

In Exercise Mode and Graphic Overlay Mode, the video system computer 28is interfaced to the exercise machine 22 for receiving exercise data andtransmitting load and display commands. It is to the implementation ofthese modes that the above-described interface module 26 andcommunications protocol are directed.

Contrastingly, in Game Mode, the exercise machine 22 and video system 24operate separately, as stand-alone units. It will be observed that auser may exercise while playing a video game in Game Mode. To facilitatethis, one of the video game's game interface peripherals 32a is mountedto the handlebars 64 of the exercise machine 22. The game interfaceperipheral 32a is wired via a cord 144 to the video system computer 28,and can therefore function independently of the interface module 26. Asdiscussed above, the third game control peripheral 32c can be mounted onthe handlebars 64 and can be connected to the video system 24 via theinterface module 26. As part of the exercise machine 22, however, thethird game control peripheral cannot be used in Game Mode.

To accommodate this multi-modal operation, the software encoded in thememory cartridge 34 is written to accept input from the exercise machine22 (via the interface module 26) when in Exercise Mode and GraphicOverlay Mode, and to accept input from the game control peripherals 32aand 32b when in the Game Mode. In this manner, memory cartridge 34 hasmaximum flexibility for use in standard video games and other programs,whether or not equipped or used with the interface module 26. It is alsopossible for the program on memory cartridge 34 to accept input fromboth the game control peripherals 32a, 32b and the exercise machine 22.This feature is particularly useful when two users are playing a videogame, but only one is using the exercise machine 22. In this respect,the program operates in Game Mode with respect to the user who is not onexercise machine, and in Exercise Mode with respect to the user who ison exercise machine 22.

The flow chart of FIG. 13 illustrates the generalized operation of thesoftware of memory cartridge 34 executed in the video system computer28. At a block 146, the video system computer 28 accepts a modeselection from the user. This may be accomplished under software controlvia one of the game control peripherals 32a and 32b, or by an externalhardware switch (not illustrated) The video system computer 28determines at block 146 which mode is selected. If Graphic Overlay Modeis selected, control moves to a block 148. Details of Graphic OverlayMode are discussed below.

If Game Mode is selected, the video system computer 28 reads user inputfrom the game control peripherals 32a and 32b at a block 150, executesgame control at a block 152, and updates the display on the television30 at a block 154. Although in the illustration, the software isdirected toward an interactive video game, other applications can beused, including, for example, a fitness trainer. At a decision block156, if the game is over, the program terminates. Otherwise, controlreturns to the block 150, and processing at blocks 150 through 156 isrepeated.

If the Exercise Mode is selected, the video system computer 28 transmitson INITIALIZE command to the exercise machine 22 at a block 158. Theprotocol of this communication is discussed above. At a block 160, thevideo system computer 28 reads input data from the exercise machine 22(via the interface module 26) and game control peripherals 32a and 32b.At a block 162, the video system computer 28 executes game control. At ablock 164, the video system computer 28 updates the video display on thetelevision 30 to reflect changes in game state as a result of theprocessing at the block 162. At a block 166, the video system computer28 determines the contents of the next command data packet. At adecision block 168, if the video game is over, the program terminates.Otherwise, control returns to the block 160, and processing at theblocks 160 through 168 is repeated.

It is understood that the processing depicted in the blocks 158 through168 represents only one of many possible approaches. For example, thesesteps 158 through 168 may be performed in a different order orconcurrently, depending on the nature of the video system 24 and thespecific program executed thereon. The step 162 of executing gamecontrol at the blocks, refers to the idea that the video system computer28 will update the state of the video game or other program in responseto past and current user input and the passing of time. For example, ifa video game depicts a player as a bicyclist racing down a highway, thestep 162 of executing game control might include a determination of whatspeed the player's opponents will pedal as a function of past andcurrent user input.

Dynamic control of Exercise Machine

When operating in the Exercise Mode, the video system computer 28 mayadjust load resistance imposed by alternator 88 in accordance with theoutcome of the video program. For the purpose of illustration, it isassumed that the video system computer 28 is executing a video gameprogram which generates an animated display (on the television 30) of arace over terrain of varying grade and quality. The video systemcomputer 28 adjusts the load resistance of alternator 88 in accordancewith the varying terrain depicted and the user's actions. Thus, forexample, if the terrain depicted on the television 30 has an increasinggrade, then the video system computer 28 increases the load resistanceof alternator 88.

The difficulty in existing systems is that changes in actual loadresistance may not be properly coordinated with changes in the depictedterrain or other video display. This discrepancy may arise becausevarious exercise machines have different operating characteristicsdepending on the type of machine and the type of load device used inthat machine. For example, an exercise bicycle using an alternator forload resistance hag different operating characteristics than an exercisebicycle using an eddy current brake, or a stair climber using a bandbrake.

The operating characteristic of greatest interest is the load response.Load response refers to the time delay between changes in the loadcontrol signal 90 and changes in the actual load imposed on the user bythe alternator 88. Fortunately, the load response of the alternator 88is almost instantaneous. However, the load response in an eddy currentbrake, for example, may be delayed by several seconds.

If actual load experienced by the user is to reflect the changes insimulated terrain (or other visual display), then it is important thatthe change in load occur virtually simultaneously with the depictedchanges in terrain (or other visual display). The realism (and,ultimately, enjoyment) of the game is diminished when the user's visualinput (such as, for example, the grade of a simulated hill) does notjibe with the sensory input of load resistance.

In cases where load response is instantaneous, video system computer 28can adjust the load control signal 90 concurrently with the changes invideo output (such as the depicted grade of terrain). Where the loadresponse is delayed (such as occurs with eddy current brakes), the videosystem computer 28 adjusts the load control signal 90 in advance of thechange in video output. For example, if the load response is a fivesecond delay, the video system computer 28 begins to increase the loadcontrol signal 90 five seconds in advance of the upcoming hill.

Because the operating characteristics (such as load response) vary fromexercise machine to exercise machine, it was initially unclear as to howthe video system computer 28 would be able to control different types ofdevices. One solution is to have each memory cartridge 34 programmed tohandle a particular type of exercise machine. Under this approach,however, cartridges designed for eddy-current-based machines wouldfunction poorly when used with alternator-based exercise machines. Thislack of flexibility is commercially impractical.

In the illustrated embodiment, this problem is solved by including inthe status data packet 138 (see FIG. 11) a machine type data byte D₅.This type data byte contains a code corresponding to the type ofexercise machine 22. For example, an eddy-current-based bicycle isassigned type number "001," while an alternator-based stair climber isassigned type number "002." A table (not shown) in the memory of thememory cartridge 34 associates each type with its assignedcharacteristic. In this manner, the video system computer 28 can adjustthe load (or other) control signal 90 in accordance with the loadresponse (or other operating characteristic) associated with theparticular type of exercise machine 22.

While practical, one difficulty with this approach is that it may not beable to accommodate new type of exercise machines whose operatingcharacteristics do not fall within an existing type. To overcome thisproblem, the exercise device may transmit a special data packet referredto as the operating characteristic specification ("OCS") data packet.The OCS data packet is transmitted by the exercise machine 22 inresponse to the video computer 68 sending an INITIALIZE command.

The OCS data packet includes the following bytes: start byte (having anaddress and ninth start bit); status byte D₀ (operating characteristicparameters D₁ -D₅); and a stop byte (having a checksum and a ninth stopbit). The protocol for communicating data packets is discussed aboveunder the heading "Communication Protocols".

Where the OCS is to be used, the status byte can take a sixth value (inaddition to the five values discussed above) which indicates that thestatus data packet is an OCS data packet. The operating characteristicparameters are parameters which specify the operating characteristics.One possible set of parameters is: type of exercise movement (reciprocalor rotary, independent or dependant); limbs exercised (legs or arms);load response (in seconds delay); type of resistance (mechanical, eddycurrent, alternator). Alternatively, other descriptions can be used.

While quite powerful, this OCS approach is still subject to thepossibility that exercise equipment will be developed that is so novelthat the predefined parameters are insufficient. To overcome thiscontingency, a third alternative is provided, wherein the command datapacket 140 (see FIG. 12) includes additional data bytes (not shown)specifying upcoming load values. The exercise computer then determinesinternally when the load control signal 90 should be adjusted inaccordance with the upcoming load values.

Graphic Overlay Mode

In some cases, a user of the system may want to use the television 30 towatch prerecorded video cassettes, CATV, broadcast TV or other externalvideo signal. In these cases, it is desirable that the user's exercisedata be periodically displayed on the television 30 over the externalvideo signal. To accomplish this objective, the system 20 includes aGraphic Overlay Mode. In Graphic Overlay Mode, the video system computer28 does not generate a video output. Rather, its main tasks are tomanage communications with the exercise machine 22, and to outputdigital exercise data to the video port 98 for superimposing display onthe television 30. In Graphic Overlay Mode, the video system computer 28can also control load resistance imposed by the alternator 88 ofexercise machine 22 in accordance with any suitable exercise program.

In practice, the software necessary for implementing the Graphic OverlayMode can be incorporated as a routine on the memory cartridge 34. Asshown in the flow chart of FIG. 13, when initiating operation of thevideo system 24, the user is given the choice of three operationalmodes, including the Graphic Overlay Mode. The user may assert thischoice either via an external hardware switch (not shown) or via one ofthe game control peripherals 32a, 32b under program control. Referringto FIG. 13, if the user selects the Graphic Overlay Mode, then controlmoves to a block 148, where the video system computer 28 transmits theINITIALIZE command to the exercise machine 22 in accordance with thecommunications protocol discussed above. At block 170, the video systemcomputer 28 reads the exercise data which it receives from the exercisemachine 22. At a block 172, the video system computer 28 writes data tothe video port 98. At a block 174, the video system computer 28 updatesthe command data packet 140. In this regard, the video system computer28 can adjust the load resistance of alternator 88 in accordance of anysuitable exercise program. At a block 176, if the exercise program isover, the Graphic Overlay Mode terminates. Otherwise, control returns tothe block 170, and the blocks 170 through 176 are repeated.

It is understood that the Graphic Overlay Mode is an aspect of theinvention that can be practiced with hardware configurations andcommunication protocols other than those illustrated above.Specifically, the video port 98 could be disposed within the exercisemachine 22 for direct access by the exercise computer 68. In this case,the exercise computer 68 (as opposed to the video system computer 28)writes exercise data to video port 98.

To implement the Graphic Overlay Mode, the video interface 38 has beenprovided. FIG. 8 illustrated the video interface 38 in greater detail.In this illustration, the television 30 is used to display the externalCATV signal 42. Alternatively, the television 30 could be used todisplay a video signal from a VCR or compact disk player, or to displaya broadcast television signal. The external CATV signal 42 is receivedin the user's home by the CATV tuner 44, which outputs a video signal178. This video signal 178 is fed into first input 180 of a switch 182.The switch 182 includes a second input 184 for receiving the output 36of the video system computer 28. The switch 182 has an output 186, and,by means of a mechanical or electronic switch, selectively couples thefirst or second input 180, 184 to the output 186.

Preferably, the switch 182 is electronically activated by one of thefour control lines 114 emanating from the video port 98 of the interfacemodule 26 (see also, FIG. 6 and discussion above relating to video port98). Thus, the video system computer 28 can, under software control,actuate switch 182 via one of the lines 114 to selectively enable eitherthe CATV signal 42 or the video output 36. In Graphic Overlay Mode, thevideo system computer 28 enables the CATV signal 42 and at the same timewrites data to the video port 98 for superimposition over the CATVsignal 42.

While the multi-modal operation of exercise video system 20 (discussedabove in connection with the flow chart of FIG. 13) contemplates thatthe Graphic Overlay Mode is selected by the user at the beginning ofoperation of the system 20, alternatives are possible. For example, thevideo system computer 28 could toggle back and forth between ExerciseMode and Graphic Overlay Mode. This would enable a user playing a videogame, for example, to suspend the video game and watch regular CATVprogramming in Graphic Overlay Mode. This toggling between modes isinitiated by the user pressing a designated button on one of the gamecontrol peripherals 32a, 32b or key on keypad 84.

The output 186 of the switch 182 is then fed to video overlay circuit188. The video overlay circuit 188 is coupled to the video port 98 bythe lines 114 of interface module 26. The video overlay circuit 188receives digital data in a serial stream via one of the lines 114. Theoverlay circuit 188 places this data over the video signal which itreceives from switch output 186. In this manner, the video imagedisplayed on the television 30 will include the data written by videosystem computer 28 to video port 98. In the disclosed embodiment, thevideo overlay circuit 188 is a Model BU 2801S from Rohm Electronics,Antioch, Tenn., U.S.A. The video overlay circuit 188 is remote from thevideo port 98, and communication therebetween is by extended TTL datalines. The overlay circuit 188 could be built inside the housing ofinterface module 26, and in fact, the TTL signal may not be properlytransmitted if the lines 114 extend too far.

The output of the video overlay circuit 188 is fed to both a firstoutlet cable 190 and an RF modulator 192. The RF modulator 192 convertsthe video output of the video overlay circuit 188 to a radio frequencysignal. The output of the RF modulator 192 is fed to a second outletcable 194. In this manner, where the television 30 cannot accept videosignal, it is coupled to the second outlet cable 194 as shown in FIG. 8.In cases where the television 30 can accept a video signal (such as with"cable ready" TVs) the television 30 is coupled to the first outletcable 190.

In accordance with another aspect of the invention, the video port 98may include an additional data line for controlling the CATV tuner 44.In these cases, the CATV tuner 44 may be incorporated in the videointerface 38 itself. In this manner, the video system computer 28 canwrite additional control bits to video port 98. These additional controlbits enable the video system computer 28 to control the CATV tuner 44 inresponse to user input (either via the game control peripherals 32a, 32bor the keypad 84). Thus, a user while exercising in Graphic Overlay Modecould conveniently change CATV channels.

When operating in Graphic Overlay Mode, the video system computer 28accepts exercise data (such as pedal rpm, total calorie consumption, andheart rate), and writes this data to the video port 98 for superimposingdisplay on the television 30. Ideally, the data should be displayed neara bottom corner of the screen, so as not to obscure the televisionimage. The data may be displayed continuously, periodically, or inresponse to the user's command (via one of the game control peripherals32a, 32b, for example).

While in Graphic Overlay Mode, the video system computer 28 can alsocontrol load resistance in accordance with a predefined exerciseprogram, such as typically resident on the exercise computer. Suchprograms include: (i) generating random values for load resistance; (ii)adjusting load resistance to maintain constant heart rate; (iii)adjusting load resistance to maintain constant step rate or maximum rpm;(iv) generating load resistance in accordance with an aerobic intervaltraining regimen; and (v) any other exercise program.

Thus, the video system computer 28 calculates or selects current andfuture loads. These load values can be transmitted to the exercisemachine 22 for display on the program profile display 86, or can begraphically depicted via the overlay circuit 188 on the television 30.

Data Storage

As discussed above, the interface module 26 includes the SRAM 96. Duringinteractive exercise operation, the video system computer 28 can writeexercise and other data to the SRAM 96. This data remains resident inthe interface module 26, even when the memory cartridge 34 (or, for thatmatter, video system computer 28) is replaced.

This feature is particularly beneficial for users who track historicalexercise data. For example, there are fitness programs (or "personaltrainers") which base workout intensity on past exercise performance.Such programs typically contemplate that the user will exercise with thesame trainer program. Thus, when the trainer program is placed on aremovable cartridge, the historical exercise data is stored on thatcartridge. This in effect limits the user to that particular cartridge.If the user were to exercise with other cartridges, such as, forexample, video game cartridges in accordance with the invention, thenthe historical data would not be properly accumulated.

This limitation is overcome by storing historical exercise data in theinterface module SRAM 96. In this manner, the user is not tied to asingle memory cartridge. For example, the user can play a number ofdifferent video games while still recording and preserving his exercisedata Also, the user can change cartridges during an exercise sessionwithout losing data.

Remote Control of Exercise Machine

Many of the more sophisticated exercise machines are computercontrolled. For example, load and, particularly, the variation of loadin accordance with a program, is controlled by a computer generatedsignal according to a preset exercise program or protocol. Thecomputation and display of calorie consumption is performed by acomputer. Computation of fitness levels and detection of heart rates areperformed by the computer. Thus, many exercise machines include one ormore microcomputers or microcontrollers, along with a display and keypadfor communication between the user and the computer.

These components Significantly add to the cost of exercise machines.Cost is an important factor in the marketing of exercise machines,particularly exercise machines intended for home use. However, mostpeople have in their home a television, and many have computer-basedvideo systems, such as the Nintendo brand entertainment system. Thus thecost of computer-controlled exercise equipment can be reduced byeliminating the computer and display components from the equipment bysubstituting the processing and display power of a typical hometelevision and video system to perform the exercise machine control anddisplay functions.

In accordance with this invention, an alternative embodiment 20' of theexercise video system 20 is illustrated in FIG. 9. This embodiment issimilar to the system 20 except that it does not have a control anddisplay panel such as panel 74 or a computer such as exercise computer68. A remote interface 198 sends and receives serial RS-232communications in accordance with a predetermined protocol. The videosystem computer 28 periodically, such as, for example, every 100milliseconds sends a command byte. In response, the exercise machineremote interface 198 transmits a status packet of three bytes. The firstbyte is the output of a biosensor 200, the second byte is the output ofa mechanical sensor 202 and the third byte is the output of a DIP switch204. The setting of the DIP switch 204 indicates the type of exercisemachine, and corresponds to the machine type byte D₅ of the status datapacket 138 discussed above.

The exercise machine 22' is equipped with a load device 206, preferablyan alternator with suitable control circuitry, which is responsive to aload control signal 208. In practice, the command byte received from thevideo system computer 28 is interpreted by the exercise machine 22' asthe new value of the load control signal 208. The remote interface 198includes a three-bit counter and a clock (not shown). The counter iscoupled to the clock, and increments with each clock cycle. As thecounter increments, it successively enables each of the load device 206,bio-sensor 200, mechanical sensor 202 and DIP switch 204. A latchincluded in the remote interface 198 is coupled to each of thesedevices, and holds data bytes received from and transmitted to the videosystem computer 28. When a command byte is received from the videosystem computer 28, the counter is reset to binary "000", which enablesthe load device 206 to read the byte in the data latch. The clockoperating at a clock speed of about 200 Hz begins to increment thecounter. When the counter is incremented to binary "001", it enables thebiosensor 200 to write its contents to the latch. On the next clockpulse, the contents of the latch are transmitted to the video systemcomputer 28, and the counter is incremented to binary "010"enabling themechanical sensor 202 to write its contents to the latch. On the nextclock pulse, the contents of the latch are transmitted to the videosystem computer 28, and the counter is incremented to binary "011",enabling the mechanical DIP switch 204 to write its contents to thelatch. On the next clock pulse, the contents of the latch aretransmitted to the video system computer 28, and the counter isincremented to binary "100". When the state of the counter is binary"100" clock is disabled and the remote interface 198 is placed into areceive mode so that no further data is transmitted until the nextcommand byte is received from the video computer 68. When the nextcommand byte is received, the counter is reset to "000", and theabove-described process is repeated.

In accordance with this embodiment, the video system computer 28 readsthe values of the biosensor 200; mechanical sensor 202 and DIP switch204, and computes elapsed time, calorie consumption and rate of calorieconsumption. The video system computer 28 also determines the currentand upcoming load resistance values, and displays all of thisinformation in the television 30. This can be done in connection with avideo game or other exercise programs. The video system computer 28 canalso accept user input such as weight, exercise level and target heartrate using the game controllers 32a and 32b. To this end, promptsdirecting the user to enter the required data are displayed on thetelevision 30.

Video Game Exercise Protocols

To maximize physical fitness and in particular, cardiovascular fitness,it is considered desirable to perform exercise according topredetermined exercise protocols. Many existing computerizedaerobic-type exercise machines are programmed such that the user is ledthrough a preset exercise program. For example, there are exercisebicycles that vary resistance levels and step machines that vary steprate in order to create an interval training program resulting inspecific cardiovascular objectives. Similarly, such exercise machinesare often programmed with protocols designed to provide aerobic workoutsthat will burn off a predetermined number of calories; last a specificperiod of time or maintain a designated heart rate. In one embodiment ofthe invention, the fitness results of the video games implemented in thesystem of FIG. 1 are improved by embedding exercise protocols in thegame scenarios programmed in the cartridge 34.

An illustration of a video game containing an exercise protocol isprovided in FIG. 14. In the lower portion of FIG. 14, resistance levelsgenerated by the exercise machine 22 over a time period are indicated bya line 300. This resistance program is designed to produce an intervaltype workout having a duration of 12 minutes. In the upper portions ofFIG. 14 are a series of representative video screens 302-308 displayedon the television 30 which are created by a video game program containedin the cartridge 34. Correspondence between the screens 302-308 and theresistance levels 300 is indicated by a set of dashed lines 310-316. Theparticular game illustrated in FIG. 14 is a bicycle road race where aroad 318a-318d and associated terrain 320a-320b is projected forwardfrom the user who, for the purpose of the game, is riding a bicycle 322.Steering of the bicycle on the road 318a-318d can be simulated by usingthe game controller 32c in the same manner that steering is simulated instandard video road race type games. The apparent speed of the user'sbicycle can be changed by the user varying the rate that he is pedalingthe exercise bicycle 22. The video game can also create other bicycleriders (not shown) to provide competition for the user.

To provide realism and visual feedback, when the resistance level isincreased from a base level, for example, during a warm-up period 323 toa plateau resistance level 324, the video game will generate a screensuch as the screens 318b and 318c that visually suggests to the userthat riding the bicycle will require a greater effort. One method ofaccomplishing this effect is to move a horizon line 326a in the screen302 from a base level upwardly to a position 326b in screen 304 so as togive the user the visual impression that he is riding up hill. Thiseffect can also be accomplished by simulating sand, water or snow on theroad 318c as shown on the screen 306 by a dotted portion 328 of theimage. Using different visual effects to indicate increased ridingeffort is desirable when there is a relatively long period of increaseresistance as in the case of the plateau portion 324 of the program 300.Here, as depicted on screen 306, the sand 328 is used to suggestincreased riding effort after the first portion of the plateau 324 isrepresented by the hill in the screen 304. A variety of other methods ofdisplaying increased riding effort situations can be used includingplacing obstacles in the road 318a-318b; depicting the bicycle 322 ashaving a flat tire; or having an opposition rider knock the user off thebicycle 322 so that the user is required to start riding again with theincreased effort normally associated with starting off on a bicycle. Bythe same token, when the resistance program 300 results in a decrease inuser resistance, as shown for instance at a point 330 in the program300, the apparent horizon 326d in the screen 308 can be moveddownwardly. This will provide the user with the visual impression thathe is riding down hill.

In addition, in some circumstances, it can be desirable to displayupcoming hills. In the screen 308, for example, the road 318d is showntraversing a pair of upcoming hills 332 and 334. By showing upcominghills, the user can be prepared for increased effort levels. Also, theupcoming hills can simultaneously be displayed on the LED display 86 ofthe exercise bicycle panel 74.

One problem that can occur when an exercise protocol is imbedded in avideo game is that the user's rate of exercise can affect the operationof the video game so that the game display may not match the programmedexercise routine. For example, in the game illustrated in FIG. 14, ifthe user pedals the exercise cycle 322 at a rate greater than thenominal rate of 80 RPM for this machine, the bike 322 will move morequickly along the road 318a-318d toward the hills displayed on thescreens 302-308. Thus, the hills or displayed resistances shown inscreens 304 or 306 will appear on the display 30 before the programmedresistance levels 300 are applied to the exercise bicycle 322. Likewise,if the exercise bicycle is pedaled at a slower rate, the programmedresistance 300 would occur before a hill or other images suggestingincreased effort is generated on the display 30.

It is, therefore, desirable to supply the video game program based on anexercise protocol with logic that will compensate for the user's actualrate of exercise. In the video game illustrated in FIG. 14, for example,the distances to the hills projected on the screens 302-308 can beprogrammed to be a function of the time when the next programmedresistance level 300 is to occur and the rate at which the exercisebicycle 322 is pedaled. The following relation can be used by the videogame program in the cartridge 34 to define the apparent distance d_(n)as: ##EQU1## where: t_(n) is the time programmed for the next resistancelevel according to the exercise protocol.

t_(c) is the current time.

V_(k) is the nominal speed of exercise for the exercise machine.

V_(c) is the actual speed of exercise

K is a scaling constant.

By using the above relation, the video game program can continue tocalculate the distance to the next hill or other displayed source ofincreased riding effort and generate the appropriate screens for displayon the television 30.

Similar formulations can be used to adjust a video game display wherethe exercise protocol is based on distance, calories burned or heartrate and where the user can vary exercise machine operating parameterssuch as pedal or step rate or resistance.

It should be noted that the video game with the exercise protocoldescribed above in connection with FIG. 14 can be termed an open loopsystem. In this approach, the video game is designed to lead the userthrough a preset exercise routine. However, the general approachdescribed above can be used to provide video game exercise systems withvideo games that operate in a closed loop manner. For example, theexercise machine 22 can be used to monitor heart rate as described inconnection with FIG. 4 and the video game can be programmed to maintainthe user's heart rate at a prescribed level. This can be done, forinstance, by varying the resistance of the exercise machine 22 andgenerating corresponding screen displays of the type shown in FIG. 14.

We claim:
 1. A physical exercise video system, comprising:a physicalexercise machine including at least one sensor for generating anexercise signal indicating an exercise condition; a video systemincluding a control unit having a video output, video monitor means fordisplaying said video output, and at least one user-controlled gameinterface peripheral operatively associated with said control unit;communications means for transmitting said exercise signal from saidexercise machine to said control unit; said control unit being adaptedfor selective operation in at least an exercise mode and a stand-alonemode, wherein:in said exercise mode, said control unit generates saidvideo output in response to said exercise signal and said game controlperipheral; and in said stand-alone mode, said control unit generatessaid video output in response to said game control peripheral.